2. Propriétés du Conteneur
flex-direction (Direction principale)
.container {
flex-direction: row; /* par défaut - gauche à droite */
flex-direction: row-reverse; /* droite à gauche */
flex-direction: column; /* haut en bas */
flex-direction: column-reverse; /* bas en haut */
}
flex-wrap (Retour à la ligne)
.container {
flex-wrap: nowrap; /* par défaut - pas de retour */
flex-wrap: wrap; /* retour à la ligne */
flex-wrap: wrap-reverse; /* retour à la ligne inversé */
}
justify-content (Alignement principal)
.container {
justify-content: flex-start; /* par défaut - début */
justify-content: flex-end; /* fin */
justify-content: center; /* centre */
justify-content: space-between; /* espace entre */
justify-content: space-around; /* espace autour */
justify-content: space-evenly; /* espace égal */
}
align-items (Alignement secondaire)
.container {
align-items: stretch; /* par défaut - étire */
align-items: flex-start; /* début */
align-items: flex-end; /* fin */
align-items: center; /* centre */
align-items: baseline; /* ligne de base */
}
gap (Espacement)
.container {
gap: 10px; /* espacement égal */
gap: 10px 20px; /* rangée colonne */
row-gap: 10px; /* espacement rangées */
column-gap: 20px; /* espacement colonnes */
}
3. Propriétés des Éléments
ordre
.item {
order: 0; /* par défaut */
order: 1; /* position plus tard */
order: -1; /* position plus tôt */
}
flex-grow (Capacité à grandir)
.item {
flex-grow: 0; /* par défaut - ne grandit pas */
flex-grow: 1; /* peut grandir */
flex-grow: 2; /* grandit 2x plus que flex-grow: 1 */
}
flex-grow définit la capacité d'un élément à occuper l'espace disponible
flex-shrink (Capacité à rétrécir)
.item {
flex-shrink: 1; /* par défaut - peut rétrécir */
flex-shrink: 0; /* ne rétrécit pas */
flex-shrink: 2; /* rétrécit 2x plus que flex-shrink: 1 */
}
flex-shrink définit la capacité d'un élément à rétrécir si nécessaire
flex-basis (Taille initiale)
.item {
flex-basis: auto; /* par défaut - taille du contenu */
flex-basis: 0; /* taille minimum */
flex-basis: 100px; /* taille fixe */
}
flex (Raccourci)
.item {
flex: 0 1 auto; /* par défaut (grow shrink basis) */
flex: 1; /* équivalent à flex: 1 1 0 */
flex: auto; /* équivalent à flex: 1 1 auto */
flex: none; /* équivalent à flex: 0 0 auto */
}
align-self (Alignement individuel)
.item {
align-self: auto; /* par défaut - suit align-items */
align-self: flex-start; /* début */
align-self: flex-end; /* fin */
align-self: center; /* centre */
align-self: stretch; /* étire */
}